\par \textit{Squid} é um servidor \textit{proxy} que suporta os protocolos http, https, ftp entre
outros. Ele possui diversos e recursos, como:

\begin{itemize}
    \item Suporte a ACL;
    \item Bloqueio de sites;
    \item Bloqueio por protocolos;
    \item Bloqueio por extensão de arquivos;
    \item Bloqueio por mime types;
    \item Limitação de banda;
    \item Controle de acesso por horário;
\end{itemize}

\par Além disso suas funcionalidades ainda podem ser ampliadas com o
auxílio de ferramentas externas, como por exemplo, um filtro de conteúdo que é 
responsável por fazer uma análise detalhada de cada página solicitada antes de 
encaminhá-la para o solicitante, podendo ou não bloqueá-la\cite{squid_ninja}.
E é graças e esta capacidade de poder acoplar ferramentas externas para extender
suas funcionalidades que a realização deste trabalho está sendo possível.

\subsection{Funcionamento}
\par O funcionamento do \textit{Squid} ocorre como o descrito no capítulo \ref{proxy},
mas ele ainda executa uma série de validações definidas pelo administrador. 
Desde o momento em que a primeira solicitação entra no \textit{squid} até o momento final de
seu processamento, diversas informações são gravadas em seus arquivos de log.

\par Na figura \ref{fig:squid_request} podemos ver que todas as requisições
precisam passar pelo proxy para ter acesso a internet.

\begin{figure}[ht]
    \includegraphics[scale=0.4]{images/squid_request.eps}
    \caption{O acesso é gerenciado pelo Squid}
    \label{fig:squid_request}
\end{figure}

\nocite{Linux}

